using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("DisconnectMgr")]
	public class DisconnectMgr : MonoBehaviour
	{
		public AlertPopup m_dialog => method_3<AlertPopup>("m_dialog");

		public DisconnectMgr(IntPtr address, string className)
			: base(address, className)
		{
		}

		public DisconnectMgr(IntPtr address)
			: this(address, "DisconnectMgr")
		{
		}

		public static DisconnectMgr Get()
		{
			return MonoClass.smethod_15<DisconnectMgr>(TritonHs.MainAssemblyPath, "", "DisconnectMgr", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void DisconnectFromGameplay()
		{
			method_8("DisconnectFromGameplay");
		}

		public void ShowGameplayDialog(SceneMgr.Mode nextMode)
		{
			method_8("ShowGameplayDialog", nextMode);
		}

		public bool OnGameplayDialogProcessed(DialogBase dialog, object userData)
		{
			return method_11<bool>("OnGameplayDialogProcessed", new object[2] { dialog, userData });
		}

		public void OnSceneLoaded(SceneMgr.Mode mode, PegasusScene scene, object userData)
		{
			method_8("OnSceneLoaded", mode, scene, userData);
		}

		public void UpdateGameplayDialog()
		{
			method_8("UpdateGameplayDialog");
		}

		public void OnGameplayDialogResponse(AlertPopup.Response response, object userData)
		{
			method_8("OnGameplayDialogResponse", response, userData);
		}
	}
}
